3 research outputs found

    Complexity Results for Fourier-Motzkin Elimination

    Get PDF
    In this thesis, we propose a new method for removing all the redundant inequalities generated by Fourier-Motzkin elimination. This method is based on Kohler’s work and an improved version of Balas’ work. Moreover, this method only uses arithmetic operations on matrices. Algebraic complexity estimates and experimental results show that our method outperforms alternative approaches based on linear programming

    Advances in the Automatic Detection of Optimization Opportunities in Computer Programs

    Get PDF
    Massively parallel and heterogeneous systems together with their APIs have been used for various applications. To achieve high-performance software, the programmer should develop optimized algorithms to maximize the system’s resource utilization. However, designing such algorithms is challenging and time-consuming. Therefore, optimizing compilers are developed to take part in the programmer’s optimization burden. Developing effective optimizing compilers is an active area of research. Specifically, because loop nests are usually the hot spots in a program, their optimization has been the main subject of many optimization algorithms. This thesis aims to improve the scope and applicability of performance optimization algorithms used in the compiler optimization phase. In the first two chapters, we focus on the parts of the programs with for-loop nests. We take advantage of the polyhedral model and the scalar evolution to develop algorithms that can automatically discover new optimization opportunities in computer programs. Our functions operate at the intermediate representation level and are implemented as part of the LLVM infrastructure. In the final chapter, we improve the performance of the Fourier-Motzkin elimination method, which is an underlying algorithm in the polyhedral theory
    corecore